package com.Shuang.Demo6;

/*
* 1、设计一个Node泛型类，用于代表链表的结点。每个结点包含（数据data，和下一个结点的地址值next）
2、开发一个类叫MyLinkedList，提供一个add方法可以让用户添加链表的结点，直到用户输入exit，则返回链表（返回链表实际上是返回链表的头结点）
3、提供一个reverse方法，接收头指针 head 和两个整数 left 和 right ，其中 left <= right，按上面的要求进行反转。反转后，返回新的链表
4、提供一个forEach方法，接收新链表，并对其进行遍历输出。
* */
public class Test {
    public static void main(String[] args) {
        MyLinkedList<String> dates = new MyLinkedList<>();
        MyLinkedList.Node<String> head = dates.add();
        dates.forEach(head);

        System.out.println("\n-----------------------------");

        MyLinkedList.Node<String> datesEeverse = dates.reverse(head, 1, 4);
        dates.forEach(datesEeverse);
    }
}
